"""
    随机生成20个[1, 20]的正整数，统计每个数字出现的次数，排序并降序输出次数最多的前三个三数字及次数；
"""
import random
lst = [random.randint(1,20) for i in range(20)]
a = []
b = []
#生成一个元素与出现的次数的二维表。
for item in set(lst):
    #print("the %d has found % d" % (item, lst.count(item)))
    a.append(item)
    a.append(lst.count(item))
    b.append(a)
    a = []

print(sorted(b,key = lambda x:x[1],reverse = True)[:3])



